﻿using NUnit.Framework;
using Vk.Methods.Audios;

namespace UnitTests
{
    [TestFixture]
    public class AudioTests : TestsBase
    {
        [Test]
        [ExcludeParameters("needUser")] 
        //There is an extended version of the method with this parameter, because it returns other type data
        public void GetTest()
        {
            IsSignatureUpdated(typeof(Audios).GetMethod("Get"));
        }

        [Test]
        public void GetByIdTest()
        {
            IsSignatureUpdated(typeof(Audios).GetMethod("GetById"));
        }

        [Test]
        public void GetLyricsTest()
        {
            IsSignatureUpdated(typeof(Audios).GetMethod("GetLyrics"));
        }

        [Test]
        public void SearchTest()
        {
            IsSignatureUpdated(typeof(Audios).GetMethod("Search"));
        }

        [Test]
        public void GetUploadServerTest()
        {
            IsSignatureUpdated(typeof(Audios).GetMethod("GetUploadServer"));
        }

        [Test]
        public void SaveTest()
        {
            IsSignatureUpdated(typeof(Audios).GetMethod("Save"));
        }

        [Test]
        public void AddTest()
        {
            IsSignatureUpdated(typeof(Audios).GetMethod("Add"));
        }

        [Test]
        public void DeleteTest()
        {
            IsSignatureUpdated(typeof(Audios).GetMethod("Delete"));
        }

        [Test]
        public void EditTest()
        {
            IsSignatureUpdated(typeof(Audios).GetMethod("Edit"));
        }

        [Test]
        public void ReorderTest()
        {
            IsSignatureUpdated(typeof(Audios).GetMethod("Reorder"));
        }

        [Test]
        public void RestoreTest()
        {
            IsSignatureUpdated(typeof(Audios).GetMethod("Restore"));
        }

        [Test]
        public void GetAlbumsTest()
        {
            IsSignatureUpdated(typeof(Audios).GetMethod("GetAlbums"));
        }

        [Test]
        public void AddAlbumTest()
        {
            IsSignatureUpdated(typeof(Audios).GetMethod("AddAlbum"));
        }

        [Test]
        public void EditAlbumTest()
        {
            IsSignatureUpdated(typeof(Audios).GetMethod("EditAlbum"));
        }

        [Test]
        public void DeleteAlbumTest()
        {
            IsSignatureUpdated(typeof(Audios).GetMethod("DeleteAlbum"));
        }

        [Test]
        public void MoveToAlbumTest()
        {
            IsSignatureUpdated(typeof(Audios).GetMethod("MoveToAlbum"));
        }

        [Test]
        public void SetBroadcastTest()
        {
            IsSignatureUpdated(typeof(Audios).GetMethod("SetBroadcast"));
        }

        [Test]
        public void GetBroadcastListTest()
        {
            IsSignatureUpdated(typeof(Audios).GetMethod("GetBroadcastList"));
        }

        [Test]
        public void GetRecommendationsTest()
        {
            IsSignatureUpdated(typeof(Audios).GetMethod("GetRecommendations"));
        }

        [Test]
        public void GetPopularTest()
        {
            IsSignatureUpdated(typeof(Audios).GetMethod("GetPopular"));
        }

        [Test]
        public void GetCountTest()
        {
            IsSignatureUpdated(typeof(Audios).GetMethod("GetCount"));
        }
    }
}
